package net.sahv.bdyz.mapper;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import net.sahv.bdyz.model.Fabric;
import net.sahv.bdyz.model.FabricFilter;

@Repository
public interface FabricFilterMapper {
	/**
	 * 
	 * @author 作者 : 任凯伟
	 * @date 创建时间：2016年8月4日 下午3:22:52
	 * @version 1.0
	 * @see 新增
	 * @param
	 * @parameter
	 * @since
	 * @return
	 */
	int insert(FabricFilter record);

	/**
	 * 
	 * @author 作者 : 任凯伟
	 * @date 创建时间：2016年8月4日 下午3:23:10
	 * @version 1.0
	 * @see 查询所有
	 * @param
	 * @parameter
	 * @since
	 * @return
	 */
	List<FabricFilter> selectAll();

	/**
	 * @author 作者 : 任凯伟
	 * @date 创建时间：2016年8月6日 上午11:49:48
	 * @version 1.0
	 * @see
	 * @param
	 * @parameter
	 * @since
	 * @return
	 */
	List<Map<String, Object>> getList(Map<String, Object> param);

	/**
	 * @author 作者 : 任凯伟
	 * @date 创建时间：2016年8月6日 上午11:50:06
	 * @version 1.0
	 * @see
	 * @param
	 * @parameter
	 * @since
	 * @return
	 */
	Integer getTotalCount(@Param("where") String where);

	/**
	 * @author 作者 : 任凯伟
	 * @date 创建时间：2016年8月6日 下午4:05:30
	 * @version 1.0
	 * @see
	 * @param
	 * @parameter
	 * @since
	 * @return
	 */
	List<FabricFilter> findParentList();

	/**
	 * @author 作者 : 任凯伟
	 * @date 创建时间：2016年8月6日 下午4:47:38
	 * @version 1.0
	 * @see
	 * @param
	 * @parameter
	 * @since
	 * @return
	 */
	int delete(Integer[] id);

	/**
	 * @author 作者 : 任凯伟
	 * @date 创建时间：2016年8月6日 下午5:14:04
	 * @version 1.0
	 * @see
	 * @param
	 * @parameter
	 * @since
	 * @return
	 */
	FabricFilter findById(Integer id);

	/**
	 * @author 作者 : 任凯伟
	 * @date 创建时间：2016年8月6日 下午5:31:29
	 * @version 1.0
	 * @see
	 * @param
	 * @parameter
	 * @since
	 * @return
	 */
	int update(FabricFilter fFilte);

	/**
	 * @author 作者 : 任凯伟
	 * @date 创建时间：2016年8月8日 下午5:44:36
	 * @version 1.0
	 * @see
	 * @param
	 * @parameter
	 * @since
	 * @return
	 */
	List<FabricFilter> findChildList();

	/**
	 * 查询parent的Id为0的数据
	 * 
	 * @author 张天敏
	 * @date 日期：2016年8月9日 时间：上午10:27:12
	 * @return
	 */
	List<FabricFilter> ffParentList();

	/**
	 * 查询成份下的数据
	 * 
	 * @author 作者 : 周晓娜
	 * @date 创建时间：2016年8月12日 下午2:20:44
	 * @param
	 * @parameter
	 * @return
	 */
	List<FabricFilter> getCFList();

	/**
	 * 查询成份下的面料信息
	 * 
	 * @author 作者 : 周晓娜
	 * @date 创建时间：2016年8月12日 下午2:30:46
	 * @param
	 * @parameter
	 * @return
	 */
	List<Map<String, Object>> getCFListMore(@Param("id") Integer id);
	/**
	 * 印花加工列表
	* @author  作者 : 周晓娜
	* @date 创建时间：2016年8月12日 下午3:17:20
	* @param
	* @parameter
	* @return
	 */
	List<Map<String, Object>> getPrintList();

	/**
	 * 查找成分
	 * @author 张天敏
	 * @date 日期：2016年8月13日 时间：上午10:30:21
	 * @param pId
	 * @return
	 */
	List<FabricFilter> selectByFfParentId(@Param("pId") int pId);

	/**
	 * @author 张天敏
	 * @date 日期：2016年10月6日 时间：下午2:29:23
	 * @return
	 */
	List<FabricFilter> selectByFfNotFull();

	/**
	 * 根据成分查找面料
	 * @author 张天敏
	 * @date 日期：2016年8月13日 时间：上午10:18:35
	 * @param id
	 * @return
	 */
	/*Fabric selectByFIngredients(@Param("id") int id);*/
}